/*
 * 文件名:Warehouse.java
 * 创建时间:2010-10-01
 * 版本:2.0
 * 版权所有:杨涛 walle1027@gmail.com
 */
package com.yangtao.wms.domain;

import com.yangtao.framework.hibernate.BaseEntity;

import javax.persistence.*;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author 代码生成器 v-2.0
 * @version 2.0
 */
@Entity
@Table(name = "WMS_MST_WAREHOUSE")
public class Warehouse extends BaseEntity implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 仓库编号
	 */
	@Column(name = "WAREHOUSE_CODE", length = 20)
	private String warehouseCode;
	/**
	 * 仓库名称
	 */
	@Column(name = "WAREHOUSE_NAME", length = 20)
	private String warehouseName;
	/**
	 * 行政区域
	 */
	@Column(name = "DIVISION", length = 20)
	private String division;
	/**
	 * 存储条件
	 */
	@Column(name = "LOC_TERM", length = 20)
	private String locTerm;
	/**
	 * 仓库类型
	 */
	@Column(name = "WAREHOUSE_TYPE", length = 20)
	private String warehouseType;
	/**
	 * 最大面积
	 */
	@Column(name = "MAX_AREA", length = 9, scale = 3)
	private BigDecimal maxArea;
	/**
	 * 可用面积
	 */
	@Column(name = "AVAILABLE_AREA", length = 9, scale = 3)
	private BigDecimal availableArea;
	/**
	 * 面积单位
	 */
	@Column(name = "AREA_UNIT", length = 6)
	private String areaUnit;
	/**
	 * 说明
	 */
	@Column(name = "REMARK", length = 300)
	private String remark;
	/**
	 * 管理员
	 */
	@Column(name = "CONSERVATOR", length = 20)
	private String conservator;
	/**
	 * 所有人
	 */
	@Column(name = "OWNER", length = 20)
	private String owner;
	/**
	 * 联系人编号
	 */
	@Column(name = "CONTACT_CODE", length = 20)
	private String contactCode;
	/**
	 * 联系人
	 */
	@Column(name = "CONTACT_NAME", length = 20)
	private String contactName;
	/**
	 * 电子邮件
	 */
	@Column(name = "CONTACT_EMAIL", length = 20)
	private String contactEmail;
	/**
	 * 传真
	 */
	@Column(name = "CONTACT_FAX", length = 20)
	private String contactFax;
	/**
	 * 签收人
	 */
	@Column(name = "SIGN_MAN", length = 20)
	private String signMan;
	/**
	 * 联系电话
	 */
	@Column(name = "SIGN_TELEPHONE", length = 20)
	private String signTelephone;
	/**
	 * 状态
	 */
	@Column(name = "STATUS", length = 1)
	private String status;
	/**
	 * 地址
	 */
	@Column(name = "ADDRESS", length = 100)
	private String address;
	/**
	 * 邮政编码
	 */
	@Column(name = "POSTCODE", length = 6)
	private String postcode;
	/**
	 * 自定义1
	 */
	@Column(name = "UDF1", length = 20)
	private String udf1;
	/**
	 * 自定义2
	 */
	@Column(name = "UDF2", length = 20)
	private String udf2;
	/**
	 * 自定义3
	 */
	@Column(name = "UDF3", length = 20)
	private String udf3;
	/**
	 * 自定义4
	 */
	@Column(name = "UDF4", length = 20)
	private String udf4;
	/**
	 * 自定义5
	 */
	@Column(name = "UDF5", length = 20)
	private String udf5;
	/**
	 * 自定义6
	 */
	@Column(name = "UDF6", length = 20)
	private String udf6;
	/**
	 * 自定义7
	 */
	@Column(name = "UDF7", length = 9, scale = 3)
	private BigDecimal udf7;
	/**
	 * 自定义8
	 */
	@Column(name = "UDF8", length = 9, scale = 3)
	private BigDecimal udf8;
	/**
	 * 自定义9
	 */
	@Column(name = "UDF9", length = 9, scale = 3)
	private BigDecimal udf9;
	/**
	 * 自定义10
	 */
	@Column(name = "UDF10", length = 9, scale = 3)
	private BigDecimal udf10;
	/**
	 * 自定义11
	 */
	@Column(name = "UDF11", length = 9, scale = 3)
	private BigDecimal udf11;
	/**
	 * 自定义12
	 */
	@Column(name = "UDF12", length = 9, scale = 3)
	private BigDecimal udf12;
	/**
	 * 自定义13
	 */
	@Temporal(TemporalType.TIMESTAMP)
	private Date udf13;
	/**
	 * 自定义14
	 */
	@Temporal(TemporalType.TIMESTAMP)
	private Date udf14;
	/**
	 * 自定义15
	 */
	@Temporal(TemporalType.TIMESTAMP)
	private Date udf15;
	/**
	 * 自定义16
	 */
	@Temporal(TemporalType.TIMESTAMP)
	private Date udf16;
	/**
	 * 自定义17
	 */
	@Temporal(TemporalType.TIMESTAMP)
	private Date udf17;
	/**
	 * 自定义18
	 */
	@Temporal(TemporalType.TIMESTAMP)
	private Date udf18;
	/**
	 * 仓库客户关联表
	 */
	@OneToMany(fetch = FetchType.LAZY, mappedBy = "warehouse")
	private List<WarehouseCustomer> warehouseCustomer;
	/**
	 * 月台
	 */
	@OneToMany(fetch = FetchType.LAZY, mappedBy = "warehouse")
	private List<Platform> platform;
	/**
	 * 卸货口-仓库关联表
	 */
	@OneToMany(fetch = FetchType.LAZY, mappedBy = "warehouse")
	private List<DockWarehouse> dockWarehouse;
	/**
	 * 库区表
	 */
	@OneToMany(fetch = FetchType.LAZY, mappedBy = "warehouse")
	private List<Section> section;

	/**
	 * 托盘
	 */
	@OneToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "salver_id")
	private Salver salver;

	/**
	 * 托盘ID
	 */
	@Column(name = "salver_id", updatable = false, insertable = false)
	private String salverId;

	/**
	 * 获取  仓库编号
	 *
	 * @return warehouseCode
	 */
	public String getWarehouseCode() {
		return warehouseCode;
	}

	/**
	 * 设置 仓库编号
	 *
	 * @param warehouseCode 仓库编号
	 */
	public void setWarehouseCode(String warehouseCode) {
		this.warehouseCode = warehouseCode;
	}

	/**
	 * 获取  仓库名称
	 *
	 * @return warehouseName
	 */
	public String getWarehouseName() {
		return warehouseName;
	}

	/**
	 * 设置 仓库名称
	 *
	 * @param warehouseName 仓库名称
	 */
	public void setWarehouseName(String warehouseName) {
		this.warehouseName = warehouseName;
	}

	/**
	 * 获取  行政区域
	 *
	 * @return division
	 */
	public String getDivision() {
		return division;
	}

	/**
	 * 设置 行政区域
	 *
	 * @param division 行政区域
	 */
	public void setDivision(String division) {
		this.division = division;
	}

	/**
	 * 获取  存储条件
	 *
	 * @return locTerm
	 */
	public String getLocTerm() {
		return locTerm;
	}

	/**
	 * 设置 存储条件
	 *
	 * @param locTerm 存储条件
	 */
	public void setLocTerm(String locTerm) {
		this.locTerm = locTerm;
	}

	/**
	 * 获取  仓库类型
	 *
	 * @return warehouseType
	 */
	public String getWarehouseType() {
		return warehouseType;
	}

	/**
	 * 设置 仓库类型
	 *
	 * @param warehouseType 仓库类型
	 */
	public void setWarehouseType(String warehouseType) {
		this.warehouseType = warehouseType;
	}

	/**
	 * 获取  最大面积
	 *
	 * @return maxArea
	 */
	public BigDecimal getMaxArea() {
		return maxArea;
	}

	/**
	 * 设置 最大面积
	 *
	 * @param maxArea 最大面积
	 */
	public void setMaxArea(BigDecimal maxArea) {
		this.maxArea = maxArea;
	}

	/**
	 * 获取  可用面积
	 *
	 * @return availableArea
	 */
	public BigDecimal getAvailableArea() {
		return availableArea;
	}

	/**
	 * 设置 可用面积
	 *
	 * @param availableArea 可用面积
	 */
	public void setAvailableArea(BigDecimal availableArea) {
		this.availableArea = availableArea;
	}

	/**
	 * 获取  面积单位
	 *
	 * @return areaUnit
	 */
	public String getAreaUnit() {
		return areaUnit;
	}

	/**
	 * 设置 面积单位
	 *
	 * @param areaUnit 面积单位
	 */
	public void setAreaUnit(String areaUnit) {
		this.areaUnit = areaUnit;
	}

	/**
	 * 获取  说明
	 *
	 * @return remark
	 */
	public String getRemark() {
		return remark;
	}

	/**
	 * 设置 说明
	 *
	 * @param remark 说明
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}

	/**
	 * 获取  管理员
	 *
	 * @return conservator
	 */
	public String getConservator() {
		return conservator;
	}

	/**
	 * 设置 管理员
	 *
	 * @param conservator 管理员
	 */
	public void setConservator(String conservator) {
		this.conservator = conservator;
	}

	/**
	 * 获取  所有人
	 *
	 * @return owner
	 */
	public String getOwner() {
		return owner;
	}

	/**
	 * 设置 所有人
	 *
	 * @param owner 所有人
	 */
	public void setOwner(String owner) {
		this.owner = owner;
	}

	/**
	 * 获取  联系人编号
	 *
	 * @return contactCode
	 */
	public String getContactCode() {
		return contactCode;
	}

	/**
	 * 设置 联系人编号
	 *
	 * @param contactCode 联系人编号
	 */
	public void setContactCode(String contactCode) {
		this.contactCode = contactCode;
	}

	/**
	 * 获取  联系人
	 *
	 * @return contactName
	 */
	public String getContactName() {
		return contactName;
	}

	/**
	 * 设置 联系人
	 *
	 * @param contactName 联系人
	 */
	public void setContactName(String contactName) {
		this.contactName = contactName;
	}

	/**
	 * 获取  电子邮件
	 *
	 * @return contactEmail
	 */
	public String getContactEmail() {
		return contactEmail;
	}

	/**
	 * 设置 电子邮件
	 *
	 * @param contactEmail 电子邮件
	 */
	public void setContactEmail(String contactEmail) {
		this.contactEmail = contactEmail;
	}

	/**
	 * 获取  传真
	 *
	 * @return contactFax
	 */
	public String getContactFax() {
		return contactFax;
	}

	/**
	 * 设置 传真
	 *
	 * @param contactFax 传真
	 */
	public void setContactFax(String contactFax) {
		this.contactFax = contactFax;
	}

	/**
	 * 获取  签收人
	 *
	 * @return signMan
	 */
	public String getSignMan() {
		return signMan;
	}

	/**
	 * 设置 签收人
	 *
	 * @param signMan 签收人
	 */
	public void setSignMan(String signMan) {
		this.signMan = signMan;
	}

	/**
	 * 获取  联系电话
	 *
	 * @return signTelephone
	 */
	public String getSignTelephone() {
		return signTelephone;
	}

	/**
	 * 设置 联系电话
	 *
	 * @param signTelephone 联系电话
	 */
	public void setSignTelephone(String signTelephone) {
		this.signTelephone = signTelephone;
	}

	/**
	 * 获取  状态
	 *
	 * @return status
	 */
	public String getStatus() {
		return status;
	}

	/**
	 * 设置 状态
	 *
	 * @param status 状态
	 */
	public void setStatus(String status) {
		this.status = status;
	}

	/**
	 * 获取  地址
	 *
	 * @return address
	 */
	public String getAddress() {
		return address;
	}

	/**
	 * 设置 地址
	 *
	 * @param address 地址
	 */
	public void setAddress(String address) {
		this.address = address;
	}

	/**
	 * 获取  邮政编码
	 *
	 * @return postcode
	 */
	public String getPostcode() {
		return postcode;
	}

	/**
	 * 设置 邮政编码
	 *
	 * @param postcode 邮政编码
	 */
	public void setPostcode(String postcode) {
		this.postcode = postcode;
	}

	/**
	 * 获取  自定义1
	 *
	 * @return udf1
	 */
	public String getUdf1() {
		return udf1;
	}

	/**
	 * 设置 自定义1
	 *
	 * @param udf1 自定义1
	 */
	public void setUdf1(String udf1) {
		this.udf1 = udf1;
	}

	/**
	 * 获取  自定义2
	 *
	 * @return udf2
	 */
	public String getUdf2() {
		return udf2;
	}

	/**
	 * 设置 自定义2
	 *
	 * @param udf2 自定义2
	 */
	public void setUdf2(String udf2) {
		this.udf2 = udf2;
	}

	/**
	 * 获取  自定义3
	 *
	 * @return udf3
	 */
	public String getUdf3() {
		return udf3;
	}

	/**
	 * 设置 自定义3
	 *
	 * @param udf3 自定义3
	 */
	public void setUdf3(String udf3) {
		this.udf3 = udf3;
	}

	/**
	 * 获取  自定义4
	 *
	 * @return udf4
	 */
	public String getUdf4() {
		return udf4;
	}

	/**
	 * 设置 自定义4
	 *
	 * @param udf4 自定义4
	 */
	public void setUdf4(String udf4) {
		this.udf4 = udf4;
	}

	/**
	 * 获取  自定义5
	 *
	 * @return udf5
	 */
	public String getUdf5() {
		return udf5;
	}

	/**
	 * 设置 自定义5
	 *
	 * @param udf5 自定义5
	 */
	public void setUdf5(String udf5) {
		this.udf5 = udf5;
	}

	/**
	 * 获取  自定义6
	 *
	 * @return udf6
	 */
	public String getUdf6() {
		return udf6;
	}

	/**
	 * 设置 自定义6
	 *
	 * @param udf6 自定义6
	 */
	public void setUdf6(String udf6) {
		this.udf6 = udf6;
	}

	/**
	 * 获取  自定义7
	 *
	 * @return udf7
	 */
	public BigDecimal getUdf7() {
		return udf7;
	}

	/**
	 * 设置 自定义7
	 *
	 * @param udf7 自定义7
	 */
	public void setUdf7(BigDecimal udf7) {
		this.udf7 = udf7;
	}

	/**
	 * 获取  自定义8
	 *
	 * @return udf8
	 */
	public BigDecimal getUdf8() {
		return udf8;
	}

	/**
	 * 设置 自定义8
	 *
	 * @param udf8 自定义8
	 */
	public void setUdf8(BigDecimal udf8) {
		this.udf8 = udf8;
	}

	/**
	 * 获取  自定义9
	 *
	 * @return udf9
	 */
	public BigDecimal getUdf9() {
		return udf9;
	}

	/**
	 * 设置 自定义9
	 *
	 * @param udf9 自定义9
	 */
	public void setUdf9(BigDecimal udf9) {
		this.udf9 = udf9;
	}

	/**
	 * 获取  自定义10
	 *
	 * @return udf10
	 */
	public BigDecimal getUdf10() {
		return udf10;
	}

	/**
	 * 设置 自定义10
	 *
	 * @param udf10 自定义10
	 */
	public void setUdf10(BigDecimal udf10) {
		this.udf10 = udf10;
	}

	/**
	 * 获取  自定义11
	 *
	 * @return udf11
	 */
	public BigDecimal getUdf11() {
		return udf11;
	}

	/**
	 * 设置 自定义11
	 *
	 * @param udf11 自定义11
	 */
	public void setUdf11(BigDecimal udf11) {
		this.udf11 = udf11;
	}

	/**
	 * 获取  自定义12
	 *
	 * @return udf12
	 */
	public BigDecimal getUdf12() {
		return udf12;
	}

	/**
	 * 设置 自定义12
	 *
	 * @param udf12 自定义12
	 */
	public void setUdf12(BigDecimal udf12) {
		this.udf12 = udf12;
	}

	/**
	 * 获取  自定义13
	 *
	 * @return udf13
	 */
	public Date getUdf13() {
		return udf13;
	}

	/**
	 * 设置 自定义13
	 *
	 * @param udf13 自定义13
	 */
	public void setUdf13(Date udf13) {
		this.udf13 = udf13;
	}

	/**
	 * 获取  自定义14
	 *
	 * @return udf14
	 */
	public Date getUdf14() {
		return udf14;
	}

	/**
	 * 设置 自定义14
	 *
	 * @param udf14 自定义14
	 */
	public void setUdf14(Date udf14) {
		this.udf14 = udf14;
	}

	/**
	 * 获取  自定义15
	 *
	 * @return udf15
	 */
	public Date getUdf15() {
		return udf15;
	}

	/**
	 * 设置 自定义15
	 *
	 * @param udf15 自定义15
	 */
	public void setUdf15(Date udf15) {
		this.udf15 = udf15;
	}

	/**
	 * 获取  自定义16
	 *
	 * @return udf16
	 */
	public Date getUdf16() {
		return udf16;
	}

	/**
	 * 设置 自定义16
	 *
	 * @param udf16 自定义16
	 */
	public void setUdf16(Date udf16) {
		this.udf16 = udf16;
	}

	/**
	 * 获取  自定义17
	 *
	 * @return udf17
	 */
	public Date getUdf17() {
		return udf17;
	}

	/**
	 * 设置 自定义17
	 *
	 * @param udf17 自定义17
	 */
	public void setUdf17(Date udf17) {
		this.udf17 = udf17;
	}

	/**
	 * 获取  自定义18
	 *
	 * @return udf18
	 */
	public Date getUdf18() {
		return udf18;
	}

	/**
	 * 设置 自定义18
	 *
	 * @param udf18 自定义18
	 */
	public void setUdf18(Date udf18) {
		this.udf18 = udf18;
	}

	/**
	 * 获取 仓库客户关联表
	 *
	 * @return warehouseCustomer
	 */
	public List<WarehouseCustomer> getWarehouseCustomer() {
		return warehouseCustomer;
	}

	/**
	 * 设置 仓库客户关联表
	 *
	 * @param warehouseCustomer 仓库客户关联表
	 */
	public void setWarehouseCustomer(List<WarehouseCustomer> warehouseCustomer) {
		this.warehouseCustomer = warehouseCustomer;
	}

	/**
	 * 获取 月台
	 *
	 * @return platform
	 */
	public List<Platform> getPlatform() {
		return platform;
	}

	/**
	 * 设置 月台
	 *
	 * @param platform 月台
	 */
	public void setPlatform(List<Platform> platform) {
		this.platform = platform;
	}

	/**
	 * 获取 卸货口-仓库关联表
	 *
	 * @return dockWarehouse
	 */
	public List<DockWarehouse> getDockWarehouse() {
		return dockWarehouse;
	}

	/**
	 * 设置 卸货口-仓库关联表
	 *
	 * @param dockWarehouse 卸货口-仓库关联表
	 */
	public void setDockWarehouse(List<DockWarehouse> dockWarehouse) {
		this.dockWarehouse = dockWarehouse;
	}

	/**
	 * 获取 库区表
	 *
	 * @return section
	 */
	public List<Section> getSection() {
		return section;
	}

	/**
	 * 设置 库区表
	 *
	 * @param section 库区表
	 */
	public void setSection(List<Section> section) {
		this.section = section;
	}

	/**
	 * 获取 托盘
	 *
	 * @return salver
	 */
	public Salver getSalver() {
		return salver;
	}

	/**
	 * 设置 托盘
	 *
	 * @param salver 托盘
	 */
	public void setSalver(Salver salver) {
		this.salver = salver;
	}

	/**
	 * 获取 托盘
	 *
	 * @return salverId
	 */
	public String getSalverId() {
		return salverId;
	}

	/**
	 * 设置 托盘主键
	 *
	 * @param salverId 托盘主键
	 */
	public void setSalverId(String salverId) {
		this.salverId = salverId;
	}

}
